home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2000 #4 / Amiga Plus CD - 2000 - No. 4.iso / Tools / DFUE / Paradise / Paradise.doc < prev    next >
Encoding:
Text File  |  2000-04-25  |  22.7 KB  |  625 lines

  1. =========================================================================
  2.         PARADISE v0.71 beta  -  April 2000
  3.         Copyright (C)1999, 2000 by Giuseppe Mignogna.
  4.         Freeware. All rights reserved. Not for commercial use.
  5.  
  6.         Special thanks to Tony Duxbury.
  7. =========================================================================
  8.  
  9.  
  10.  
  11.              1. DISCLAIMER
  12.              2. FREEWARE
  13.              3. OVERVIEW
  14.              4. SYSTEM REQUIREMENTS
  15.              5. INSTALLATION AND SETUP
  16.              6. USAGE
  17.              7. KNOWN OR PROBABLE PROBLEMS
  18.              8. TROUBLE SHOOTING
  19.              9. HELP NEEDED
  20.             10. HISTORY
  21.             11. WHAT'S NEXT
  22.             12. REPLIES
  23.             13. AUTHOR
  24.             14. THANKS
  25.  
  26.  
  27.  
  28. 1. DISCLAIMER
  29. ---------------------------------
  30.     The author of this program is in no way liable for hardware
  31.     or software damages that may occur during usage or by the
  32.     information given in this document.
  33.     There is absolutely no kind of warranty: use it at your
  34.     own risk.
  35.  
  36.     ==========================================================
  37.     >>> Please carefully read ALL the documentation before <<<
  38.     >>>              starting this project.                <<<
  39.     ==========================================================
  40.  
  41.  
  42.  
  43.  
  44.  
  45. 2. FREEWARE
  46. ---------------------------------
  47.     This program is free. You can use it as you want but I still have
  48.     copyrights on it. No gift is needed to use it.
  49.     Magazine editors or internet archive owners should inform me about
  50.     the program review or inclusion in their CD-ROM's or collection.
  51.     Distribution without profits is allowed and encouraged but only for
  52.     the whole archive, not parts of it.
  53.  
  54.  
  55.  
  56.  
  57.  
  58. 3. OVERVIEW
  59. ---------------------------------
  60.     Paradise is a set of two command line programs, one for MS-DOS
  61.     and one for Amiga OS, with which you can easly and quickly transfer
  62.     files, entire directories or disk images between the Amiga and PC
  63.     systems using a spare parallel port and a special link-up cable.
  64.     If you need a program to do the above things mentioned, this is
  65.     the one for you, but if you are looking for a program
  66.     to share the devices between the two systems and/or with a nice
  67.     GUI, sorry but you have to search elsewhere.
  68.  
  69.  
  70.  
  71.  
  72.  
  73. 4. SYSTEM REQUIREMENTS
  74. ---------------------------------
  75.     * A PC with a bi-directional SPP parallel port and MS-DOS 7;
  76.       Windows 9x is needed to support long file names, but is not
  77.       necessary; other versions of MS-DOS or Windows have not been
  78.       tested but probably work OK.
  79.  
  80.     * An Amiga with OS 2.0+. I've made some tests using my Amiga
  81.       500+ with Kickstart 1.3 loaded in RAM and I found only one
  82.       problem when uploading files. It's possible to exclude the
  83.       routines that cause the failure by using the "-kick13"
  84.       option, but doing so, only files (not directories) can be
  85.       sent. Please read the "Known problems" and "Help Needed"
  86.       sections for more info.
  87.  
  88.     * A ParNet modified cable.
  89.  
  90.     This is the cable diagram, build it using two 25 PIN D-SUB MALE
  91.     connectors (for a better view, use a fixed size font):
  92.  
  93.     ==============================================
  94.       AMIGA SIDE |       Pins        |  PC SIDE
  95.     ----------------------------------------------
  96.      Data bit 0  |     2 <---> 2     | Data bit 0
  97.      Data bit 1  |     3 <---> 3     | Data bit 1
  98.      Data bit 2  |     4 <---> 4     | Data bit 2
  99.      Data bit 3  |     5 <---> 5     | Data bit 3
  100.      Data bit 4  |     6 <---> 6     | Data bit 4
  101.      Data bit 5  |     7 <---> 7     | Data bit 5
  102.      Data bit 6  |     8 <---> 8     | Data bit 6
  103.      Data bit 7  |     9 <---> 9     | Data bit 7
  104.      Busy        |    11 <---> 11    | Busy
  105.      Paper Out   |    12 <---> 1     | Strobe
  106.      Ground      | 17-25 <---> 17-25 | Ground
  107.     ==============================================
  108.  
  109.     On my cable, I have the shield wire connected too, but I think
  110.     that if you don't have it, it will work OK anyway.
  111.     Note: The ground wires and the shield wire are not the same
  112.     thing and their functions are totally different!
  113.  
  114.     =============================================================
  115.     >>>                * * W A R N I N G S * *                <<<
  116.  
  117.     - BE SURE NOT TO CONNECT PIN 14 ON THE AMIGA SIDE TO ANYTHING!
  118.       It provides A +5 volt power source used by some devices. It
  119.       may be dangerous to connect this, so don't!
  120.  
  121.     - The cable is NOT reversable. Each connector must be
  122.       plugged into the right port: the Amiga side connected to the
  123.       Amiga port, the PC side connected to the PC port.
  124.       However, no damage will occur, but it's better to mark both
  125.       connectors so that you don't get them mixed up.
  126.  
  127.     - Turn off both computers before connecting the cable.
  128.     =============================================================
  129.  
  130.     Note that Paper Out (pin 12) on the Amiga side is connected to
  131.     Strobe (pin 1) on the PC side: this is the only necessary
  132.     difference between a standard ParNet cable and a Paradise cable.
  133.     Note also that other pins used by a standard ParNet cable (such us
  134.     Acknowledge - pin 10, and Select - pin 13) are not required by
  135.     Paradise and are not shown for clarity. If you decide to build
  136.     the cable by modifying a standard one and you keep the extra pins
  137.     connected and the program will not work, try disconnecting them.
  138.     Anyway, I've tested a cable with pins 10 and 13 connected and it
  139.     works OK either way. See "Trouble Shooting" and "What's Next" for
  140.     more.
  141.  
  142.  
  143.  
  144.  
  145.  
  146. 5. INSTALLATION AND SETUP
  147. ---------------------------------
  148.     - copy the "Paradise.exe" file in the "ToPC" directory to a
  149.       PC directory then copy the "Paradise" file in the "ToAmiga"
  150.       directory to an Amiga directory.
  151.  
  152.     - build the cable (or modify a standard one) then link the two
  153.       computers together (remember to turn them off first).
  154.  
  155.     - Enter your PC BIOS and make sure it's set to use the SPP parallel
  156.       port mode at I/O base address 0x378 (this is the default setting
  157.       but Paradise allows you to specify a different address. See "Usage"
  158.       for more). Maybe your BIOS will display different names or modes,
  159.       in any case a bi-directional one must be used. I tested it with my
  160.       PC all modes available (SPP, EPP, ECP) and every mode works, but
  161.       some modes seem don't work on all PC's.
  162.  
  163.  
  164.  
  165.  
  166.  
  167. 6. USAGE
  168. ---------------------------------
  169.     - The Amiga version must be executed from a shell window, the PC
  170.       version from the DOS prompt. Long file names are supported only if
  171.       Windows 9x is running, in this case you need to execute it from a
  172.       DOS shell.
  173.  
  174.     - The easiest way Paradise can be used is to upload a file.
  175.       To do this, execute the specific version indicating the file name
  176.       on the source system, and no name on the destination system.
  177.       For example:
  178.  
  179.         "paradise c:\archive\images.zip"  on the PC
  180.         "paradise"                        on the Amiga
  181.  
  182.       This will transfer the file "images.zip" located in the
  183.       "c:\archive" directory on the PC to the current Amiga
  184.       directory.
  185.  
  186.  
  187.     =========================================================
  188.     --- Complete syntax for the Amiga and the PC versions ---
  189.     =========================================================
  190.  
  191.     Paradise [?] [filenames] [-spath <saving path>] [-stay]
  192.            [-nosubdir] [-timeout <delay>] [-noask]
  193.            [-sdisk [name]] [-rdisk] [-drive <n>] [-kick13]
  194.  
  195.     PARADISE.EXE [?] [filenames] [-spath <saving path>] [-stay]
  196.            [-nosubdir] [-timeout <delay>] [-noask]
  197.            [-port <I/O base address]
  198.  
  199.     ======================================================
  200.      --- Parameters and options common to both versions ---
  201.     ======================================================
  202.  
  203.     [?] gives short on line help.
  204.  
  205.     [filenames] is the list of files and/or directories to be uploaded
  206.         separated by spaces. Wildcards are allowed, and are OS
  207.         dependent (that is, with the Amiga version you must use
  208.         '#', '?' etc. and '*', '?' with the PC version).
  209.         If you specify a directory or it's matched by wildcards,
  210.         its contents will be transfered recursively.
  211.         The long file names with the PC are supported if Windows 9x
  212.         is running, but in any case at the command line (actually)
  213.         >> requires the 8.3 format << to indicate the files;
  214.         anyway, if possible, the long format will be used.
  215.         Protection bit will be converted in this way:
  216.  
  217.         Amiga -> PC:  rwd -> d; x -> a.
  218.         PC -> Amiga:  d -> rwd; a -> x.
  219.  
  220.     [-spath <saving path>] is the directory where the downloaded
  221.         files must be saved. If none is given, the current
  222.         dir will be used.
  223.  
  224.     [-stay] avoids program quitting after completing a download.
  225.         If you have a lot of files to upload from one side to
  226.         another, using this option on the destination system
  227.         helps you by executing the program each time.
  228.  
  229.     [-nosubdir] avoids directories be accessed recursively (that's,
  230.         sub directories are not transfered, only first level files).
  231.  
  232.     [-timeout <delay>] is the delay in milliseconds used only by the
  233.         connection/reset routine. If the message "Time Out" is
  234.         displayed and the connection can't be established, maybe
  235.         the delay is too low, so try to use an higher value. Note
  236.         that this possibility is very remote, most probably the
  237.         problem is elsewhere.
  238.         Each part uses its own delay, so different values
  239.         can be used. Default is 500 ms for the Amiga part and
  240.         10/18 of second for the PC part.
  241.  
  242.     [-noask] no kind of confirmation will be asked, for example
  243.         before writing a disk image to the floppy or when an
  244.         existing file is going to be overwritten. Note: if you
  245.         answer "N" to a confirmation message, your entire transfer
  246.         will be interrupted. See "What's Next" for more.
  247.  
  248.  
  249.     =====================================================
  250.     --- Specific Amiga version parameters and options ---
  251.     =====================================================
  252.  
  253.     [-sdisk [name]] allows to send a disk image directly from the Amiga
  254.         floppy drive to the PC. If you don't specify a name and the
  255.         disk is in the Amiga DOS format, its name will be used with
  256.         the ".adf" suffix, otherwise a default name.
  257.         Very useful if you use an Amiga emulator under PC, like WinUAE.
  258.  
  259.     [-rdisk] allows to receive a disk image file from the PC and
  260.         directly write it to a floppy disk. The image file must
  261.         be 901120 bytes long (low density). You can receive one disk
  262.         image and other files at the same time, but you must indicate
  263.         on the PC the disk image as the first file to be uploaded.
  264.  
  265.     [-drive <drive nr.>] let specify the drive (0 to 3) to be used for
  266.         the disk image transfering. Default is 0 (internal drive).
  267.         Please read the "Needed Help" section.
  268.  
  269.     [-kick13] actives a patch for Kickstart 1.3 users. I found out some
  270.         incompatible Amiga DOS routines, that cause Guru Meditation when
  271.         uploading files. Using this option avoids it, but you can't
  272.         use wildcards nor send directories (from the Amiga to the PC),
  273.         just single files. All other operations seem to work properly.
  274.         Read "Needed Help" and "Known Problems" for more.
  275.  
  276.     [-notbreak] makes the program ignores a user break before having
  277.         finished its job.
  278.  
  279.     ==================================================
  280.     --- Specific PC version parameters and options ---
  281.     ==================================================
  282.  
  283.     [-port <hexadecimal I/O base address] lets specify the address at
  284.         which the parallel port is mapped. Default is 0x378.
  285.  
  286.     ==================================================
  287.     --- More examples (as requested by some users) ---
  288.     ==================================================
  289.  
  290.     -> PC: "paradise"
  291.        AMY: "paradise -sdisk mydisk.adf"
  292.  
  293.        Transfers a disk image from the Amiga to the Pc. It will be
  294.        saved in the PC current dir and named "mydisk.adf".
  295.  
  296.     -> PC: "paradise mydisk.adf"
  297.        AMY: "paradise -rdisk "
  298.  
  299.        Transfers a file from the PC to the Amiga, writing it to the
  300.        floppy drive as a disk image. Paradise can't know if
  301.        "mydisk.adf" is a real disk image, it can just check its size.
  302.  
  303.     -> PC: "paradise mydisk.adf"
  304.        AMY: "paradise"
  305.  
  306.        Transfers a file from the PC to the Amiga, writing it to the
  307.        Amiga current dir. Note how a disk image from the PC can be
  308.        saved as a normal file if the "-rdisk" option isn't used.
  309.  
  310.     -> PC: "paradise mydisk.adf seek.lha"
  311.        AMY: "paradise -rdisk -spath dh0:downloads"
  312.  
  313.        Transfers the "mydisk.adf" disk image file from the PC to the
  314.        Amiga, writing it to the floppy drive; transfers the file
  315.        "seek.lha" from the PC to the Amiga directory "dh0:downloads".
  316.  
  317.     -> PC: "paradise seek.lha mydisk.adf"
  318.        AMY: "paradise -rdisk -spath dh0:downloads"
  319.  
  320.        Unlike the previous example, this one probably gives an error:
  321.        when receiving a disk, the first file from the PC must be a
  322.        disk image.
  323.  
  324.     =========================
  325.     --- More informations ---
  326.     =========================
  327.  
  328.     - It's possible to perform many operations at the same time.
  329.       For example:
  330.  
  331.       PC: "paradise file.1 file.2 c:\songs\*.* -spath C:\download"
  332.       AMY: "paradise ram:#?.lha -sdisk"
  333.  
  334.       will transfer the files "file.1", "file.2" and all the ones
  335.       and/or directories placed under "c:\songs" from the PC to the
  336.       Amiga current directory and all the files with extension ".lha"
  337.       from the Amiga ram: device, plus a disk image file named as
  338.       the disk name inserted in the internal drive, to the PC directory
  339.       "c:\download".
  340.  
  341.     - While running, both versions display some informations. The PC
  342.       version will show something more, like the remaining time or the
  343.       transfer rate. The rate depends on the I/O disk access in some
  344.       cases, so don't rely too much on it for the real memory buffer
  345.       to memory buffer transfer rate.
  346.  
  347.     - To break a transfer, press the <ESC> key on the PC; on the Amiga,
  348.       you must press <RETURN> too. No confirmation will be given.
  349.       If one program quits, the other one will still run, and you have
  350.       to stop it manually.
  351.  
  352.  
  353.  
  354.  
  355.  
  356. 7. KNOWN OR PROBABLE PROBLEMS
  357. ---------------------------------
  358.     - Without using the "-kick13" option, the Amiga part will fail under
  359.       Kickstart 1.3 when uploading files. When using the patch, you must
  360.       indicate the exact file name, without the path or wildcards.
  361.  
  362.     - Problems may happen using fast Amigas. I use a 7mhz Amiga against
  363.       a 233mhz PC and I don't know if something might go wrong when both
  364.       speeds are similiar. Anyway, due the asynchronous way the programs
  365.       work, everything should be alright (I hope...).
  366.  
  367.     - The programs was developed under Amiga OS 2.0 and MS-DOS 7 running
  368.       in a Windows 98 shell. Tests have been made running the program
  369.       under different conditions, but problems may still occur, in
  370.       particular, file name conflicts.
  371.  
  372.     - Note that the two programs work doing direct hardware accesses
  373.       at the parallel port registers: if they'll change, well, you
  374.       know... But I think this is very improbable.
  375.  
  376.  
  377.  
  378.  
  379.  
  380. 8. TROUBLE SHOOTING
  381. ---------------------------------
  382.     If the connection can't be established ("Time out" is always shown):
  383.  
  384.     1) Do a partial test of your parallel ports, e.g. using a printer.
  385.        This should be enough, but not completely.
  386.  
  387.     2) Check your cable, with a multimeter. Probe each single pin with
  388.        all the others: there can be no short circuits with other pins
  389.        except the one visible in the cable diagram.
  390.  
  391.     3) Be sure the PC parallel port I/O base address is set to 0x378 and
  392.        in SPP mode (bi-directional). Note: you can specify a different par
  393.        port address using the option "-port <address>".
  394.  
  395.     4) Try other PC parallel port modes (e.g. EPP or ECP).
  396.  
  397.     5) Set a higher value for the delay used by the reset routines.
  398.        For example, "paradise [your files or options] -timeout 40" on the
  399.        PC and "paradise [your files or option] -timeout 999" on the Amiga.
  400.        Anyway, this is very strange (means your computers are TOO slow).
  401.  
  402.     6) Try to connect the Acknowledge line, that's pins 10 <--> 10.
  403.        A user wrote me saying he had to keep it on, otherwise
  404.        the program did not work. I have never heard anything like this
  405.        from other people.
  406.  
  407.     7) Try the Paradise v0.53b. This has very little bugs and has been
  408.        used succesfully by many users. If it works, the problem is in this
  409.        new version, so please write me.
  410.  
  411.  
  412.  
  413.  
  414.  
  415. 9. HELP NEEDED
  416. ---------------------------------
  417.     If you want this program to be better, help me sending in an answer
  418.     for the next points (if you can, naturally).
  419.  
  420.     - I haven't received anything from users of fast Amigas. If you
  421.       have an Amiga 4000 or an accelerator board, and you use Paradise,
  422.       let me know if and how it works.
  423.  
  424.     - If you have an Amiga with native Kickstart 1.3 ROM, let me know
  425.       if uploading files works without using the '-kick13' option.
  426.       I can test it only using a Kickstart loaded in RAM and this may
  427.       be different from a real one.
  428.  
  429.     - If you have an external drive, let me know if the "-sdisk" and
  430.       "-rdisk" commands work with the "-drive <n>" option (I just
  431.       have an internal drive). <n> should be "1".
  432.  
  433.  
  434.  
  435.  
  436.  
  437. 10. HISTORY
  438. ---------------------------------
  439.     --- v0.53 beta ---
  440.     At first, I made this program for my personal use, because I
  441.     needed to transfer .MOD files and disk images (large files).
  442.     I was not interested how, but I wanted to do it fast via parallel.
  443.     But after I looked on Aminet, I saw that there where just a couple of
  444.     programs, and they didn't work for me. So I decided to program
  445.     something myself, but I have only an Amiga 500+ with 2 MB of RAM, no
  446.     hard drive and a stripped down version of SAS C that compiles only
  447.     ANSI C source code. It was very hard to make the first Amiga part of
  448.     Paradise, because of the large number of disk swapping to compile
  449.     everything. Fortunally, I only got just one or two system failures :-)
  450.     No problems with the PC part (I have a Pentium).
  451.     When I finished the programs, I saw that they worked fine and that
  452.     someone else might be interested in them, so I decided to improve them
  453.     and put the archive on the Internet.
  454.  
  455.     --- v0.71 beta ---
  456.     Using WinUAE to develop the Amiga part with the PC, I've added
  457.     tons of new features. Here is some of them:
  458.  
  459.     - core routines optimized in Assembly 68000;
  460.     - handshaking routine;
  461.     - multiple files;
  462.     - disk image sending;
  463.     - disk image receiving;
  464.     - wildcards support;
  465.     - long file names;
  466.     - recursively directories sending.
  467.  
  468.  
  469.  
  470.  
  471.  
  472. 11. WHAT'S NEXT
  473. ---------------------------------
  474.     There are things that I'll try to do, even if I get no replies:
  475.  
  476.     - Solve the bugs that might appear (I think only minor bugs, 'cause
  477.       I've tested the program enough to say it's ok :-);
  478.  
  479.     - A cable test routine to test if it's ok or diagnose what's wrong;
  480.  
  481.     - Make the Amiga version fully compatible with Kickstart 1.3;
  482.  
  483.  
  484.     There are things that I'll do only if I'll get a lot of replies:
  485.  
  486.     - Change the cable diagram in a symmetric one, that's change the
  487.       actual line 12 <-> 1 in 1 <-> 1. This means old users must modify
  488.       their cables that they have already built, but new users can
  489.       easily find, build or modify an existing commercial one. Let me
  490.       know what you think about this. If most of you think that it's a
  491.       bad idea, I'll leave things how they are now.
  492.  
  493.     - A log file, where all operations will be recorded to.
  494.  
  495.     - A simulation transfer routine, to test if a big transfer
  496.       will be done succesfully without wasting a lot of time.
  497.  
  498.      - Make the program more flexible. Actually, it quits on any type
  499.       of error that will occur during the transfer. To avoid this, I
  500.       have to modify the transfer protocol to a so called "protocol with
  501.       confirmation". In this way, each part will know exactly what is
  502.       happening on the other side and act consequently. The drawback
  503.       is the long time to make and test it!
  504.  
  505.  
  506.  
  507.  
  508.  
  509. 12. REPLIES
  510. ---------------------------------
  511.     Bug reports, suggestions or complains are very welcome AND requested.
  512.     If you think this program is useful, let me know; if you think
  513.     it's ugly, let me know too. Especially, I'm interested on your
  514.     transfer rate and configuration.
  515.     Remember that the amount of time that I'm happy to spend on this
  516.     program depends on the amount of people interested in it: if you
  517.     don't write me, I'll never know that you are using it! Lot of
  518.     features that I've added to this version are there only because some
  519.     people requested them...
  520.  
  521.  
  522.     To contact me:
  523.  
  524.     e-mail
  525.     -------------------
  526.     raze@iol.it
  527.     lux@cds.unina.it
  528.     gmignogna@yahoo.com
  529.     -------------------
  530.  
  531.     web page (carelessed, but soon you'll can find there more beta
  532.     version, bug reports, extra docs etc. Nothing just now)
  533.     -----------------------
  534.     http://www.gm.iwarp.com
  535.     -----------------------
  536.  
  537.  
  538.  
  539.  
  540.  
  541. 13. AUTHOR
  542. ---------------------------------
  543.     I'm a student of Informatic Engineering at Federico II University
  544.     of Naples. I was born in Riccia, a little italian town, where
  545.     I still live. I've a lot of interests, computers firstly.
  546.     My first computer was a Commodore 16, bought in 1985. With it, I
  547.     started to learn  basic and machine languages. Today I like
  548.     to run old c16 programs on emulators. In 1989 I sold my c16 to buy
  549.     an Amiga 500 w/ ks 1.2. After that, I bought and sold some other
  550.     machines, but what the Amiga has given to me, no other computer
  551.     has. For me it's more than a computer, it's a dream come true.
  552.     This program is a gift to the Amiga and all of its community,
  553.     I think the best community ever. And I still hope one day it'll
  554.     come back (Don't we all?).
  555.  
  556.  
  557.  
  558.  
  559.  
  560. 14. THANKS
  561. ---------------------------------
  562.     Last BUT NOT the least, the thank you's! Developing Paradise  took a
  563.     lot of my free (and sometimes not only that :) time, when I was not
  564.     busy with studies. Anyway, without the direct or indirect help
  565.     from some people, this release would have never been made. So, a big
  566.     thanks to:
  567.  
  568.     - Tony Duxbury for offering me his help and for improving the english
  569.       in these docs. I think you should thank him too :-) (my english is
  570.       so baaad!);
  571.  
  572.     - Craig Peacock for its very useful page on how to use the PC
  573.       parallel port. If you want to, you can visit:
  574.  
  575.       Interfacing the PC - Homepage
  576.       http://www.senet.com.au/~cpeacock
  577.  
  578.     - SAS Institute Inc. for the SAS C v6.51;
  579.  
  580.     - Borland International Inc. for the C++ v3.1;
  581.  
  582.     - Mathias Ortmann, Bernd Schmidt and all the other incredible guys
  583.       who developed UAE and WinUAE emulators (The Amiga version of
  584.       Paradise was developed using the SAS C running under WinUAE 0.8.8
  585.       Release 7!);
  586.  
  587.     - Frank Wille for the good MC680x0 Macro Assembler PhxAss V4.xx;
  588.  
  589.     - The guy who created the inter57b.zip collection of MS-DOS interrupt
  590.       list (sorry, I can't find his name);
  591.  
  592.     - Mikael Kalm, author of the demo "Tunnel". I used the demo source
  593.       to learn how to call functions in asm objects with the SAS C;
  594.  
  595.     - Roland Bengtsson for putting the demo "Tunnel" on his page;
  596.  
  597.     - The owner of this site: "http://amycoder.hypermart.net/". I have
  598.       found lot of interesting Amiga stuff there;
  599.  
  600.     - Bernd Schmidt, Marcus Sundberg, Stefan Ropke, Rodney Hester,
  601.       Joanne Dow for the Transdisk v4.2 source code included in the
  602.       UAE archives (Transdisk was a good example and helped me to
  603.       develop the send and receive disk routines);
  604.  
  605.     - All the people working for Aminet;
  606.  
  607.     - Pelucchi Marco for a very detailed transfer rate report;
  608.  
  609.     - Janne Lähteenmäki for reminding me to include in the docs
  610.       the BIOS setting for the parallel port;
  611.  
  612.     - Ofner Michael for letting me know about his problem with the
  613.       Acknowledge line;
  614.  
  615.     - Fabio Benedetti for the Amiga keyboard input location;
  616.  
  617.     - All the people that I forgot to include here (really sorry!);
  618.  
  619.     - Iron Maiden, Metallica, Manowar, AC/DC and Depeche Mode for making
  620.       my day with their great music;
  621.  
  622.     - My family;
  623.  
  624.     - The Amiga!
  625.